package org.dromara.patrol.api.model;

import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;

import java.io.Serial;
import java.io.Serializable;
import java.util.List;

/**
 * 执行规则
 */
@Data
public class ExecuteRule implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;
    /**
     * 循环周期类型 NO_REPEAT 不重复，DAILY 每天，WEEKLY 每周，MONTHLY 每月
     */
    private String cycleType;
    /**
     * 周规则 1-7 代表周日到周六
     */
    private List<Integer> weeklyRule;
    /**
     * 月规则 1-31 代表每月1号到31号
     */
    private List<Integer> monthlyRule;
    /**
     * 执行日期开始
     */
    private String executeDateStart;
    /**
     * 执行日期结束
     */
    private String executeDateEnd;
    /**
     * 执行时间开始
     */
    private String executeTimeStart;
    /**
     * 执行时间结束
     */
    private String executeTimeEnd;
}
